幾乎所有網絡流量都需要標準DNS查詢,這為 DNS 攻擊(例如 DNS 劫持和路徑攻擊)創造了機會。這些攻擊可以將網站的入站流量重定向到網站的虛假副本,收集敏感的用戶信息并使企業承擔重大責任。防御 DNS 威脅的最著名方法之一是采用 DNSSEC 協議。
什么是 DNSSEC?
與許多 Internet協議一樣,DNS 系統的設計并未考慮到安全性,并且包含一些設計限制。這些限制與技術進步相結合,使攻擊者很容易出于惡意目的劫持 DNS 查找,例如將用戶發送到可以分發惡意軟件或收集個人信息的欺詐性網站。
DNS 安全擴展 (DNSSEC) 是為緩解此問題而創建的安全協議。DNSSEC 通過對數據進行數字簽名來防止攻擊,以幫助確保其有效性。為了確保安全查找,簽名必須在 DNS 查找過程的每個級別進行。
這個簽名過程類似于某人用筆在法律文件上簽名;該人使用其他人無法創建的唯一簽名進行簽名,法院專家可以查看該簽名并驗證該文件是否由該人簽署。這些數字簽名確保數據沒有被篡改。
DNSSEC 跨 DNS 的所有層實施分層數字簽名策略。例如,在“google.com”查找的情況下,根 DNS 服務器將為.COM 域名服務器簽署一個密鑰,然后 .COM 域名服務器將為 google.com 的權威域名服務器簽署一個密鑰。
雖然始終首選提高安全性,但 DNSSEC 旨在向后兼容,以確保傳統 DNS 查找仍然正確解析,盡管沒有增加安全性。DNSSEC 旨在與SSL / TLS等其他安全措施一起使用,作為整體 Internet 安全策略的一部分。
DNSSEC 創建了一個一直到根區域的父子信任鏈。這個信任鏈不能在 DNS 的任何層受到損害,否則請求將變得容易受到路徑上的攻擊。
要關閉信任鏈,需要驗證根區本身(證明沒有篡改或欺詐),而這實際上是通過人工干預來完成的。有趣的是,在所謂的根區簽名儀式中,來自世界各地的選定個人會面以公開且經過審核的方式簽署根 DNSKEY RRset。
涉及 DNS 的常見攻擊有哪些?
DNSSEC 是一種功能強大的安全協議,但遺憾的是它目前并未被普遍采用。除了 DNS 是大多數 Internet 請求不可或缺的一部分這一事實之外,這種缺乏采用加上其他潛在的漏洞,使得 DNS 成為惡意攻擊的主要目標。攻擊者已經找到了許多針對和利用 DNS 服務器的方法。以下是一些最常見的:
- DNS 欺騙/緩存中毒:這是一種攻擊,其中將偽造的 DNS 數據引入 DNS 解析器的緩存,導致解析器返回不正確的域IP 地址。流量可以轉移到惡意機器或攻擊者想要的任何其他地方,而不是訪問正確的網站;通常這將是用于惡意目的(例如分發惡意軟件或收集登錄信息)的原始站點的副本。
- DNS 隧道:此攻擊使用其他協議通過 DNS 查詢和響應進行隧道傳輸。攻擊者可以使用 SSH、TCP或HTTP將惡意軟件或被盜信息傳遞到 DNS 查詢中,而大多數防火墻都無法檢測到。
- DNS 劫持:在 DNS 劫持中,攻擊者將查詢重定向到不同的域名服務器。這可以通過惡意軟件或未經授權修改 DNS 服務器來完成。雖然結果類似于 DNS 欺騙,但這是一種根本不同的攻擊,因為它針對的是域名服務器上網站的DNS 記錄,而不是解析器的緩存。
- NXDOMAIN 攻擊:這是一種 DNS 泛洪攻擊,攻擊者通過請求淹沒 DNS 服務器,請求不存在的記錄,試圖對合法流量造成拒絕服務。這可以使用復雜的攻擊工具來完成,這些工具可以為每個請求自動生成唯一的子域。NXDOMAIN 攻擊還可以針對遞歸解析器,目的是用垃圾請求填充解析器的緩存。
- 幻域攻擊:幻域攻擊與對 DNS 解析器的 NXDOMAIN 攻擊具有相似的結果。攻擊者設置了一堆“幻象”域服務器,它們要么響應非常慢,要么根本不響應請求。然后解析器受到對這些域的大量請求的沖擊,解析器被捆綁等待響應,導致性能下降和拒絕服務。
- 隨機子域攻擊:在這種情況下,攻擊者向一個合法站點的多個隨機、不存在的子域發送 DNS 查詢。目標是為域的權威名稱服務器創建拒絕服務,使其無法從名稱服務器查找網站。作為副作用,為攻擊者服務的 ISP 也可能受到影響,因為他們的遞歸解析器的緩存將加載錯誤的請求。
- 域鎖定攻擊:攻擊者通過設置特殊域和解析器來與其他合法解析器創建 TCP 連接來編排這種形式的攻擊。當目標解析器發送請求時,這些域會發回緩慢的隨機數據包流,從而占用解析器的資源。
- 基于僵尸網絡的 CPE 攻擊:這些攻擊是使用 CPE 設備(客戶駐地設備;這是服務提供商提供給客戶使用的硬件,例如調制解調器、路由器、有線電視盒等)進行。攻擊者破壞 CPE,設備成為僵尸網絡的一部分,用于對一個站點或域執行隨機子域攻擊。
防御基于 DNS 的攻擊的最佳方法是什么?
除了 DNSSEC,DNS 區域的運營商還可以采取進一步措施來保護其服務器。過度配置基礎設施是克服DDoS 攻擊的一種簡單策略。簡而言之,如果您的名稱服務器可以處理比您預期多幾倍的流量,那么基于容量的攻擊就更難壓倒您的服務器。
Anycast 路由是另一個可以破壞 DDoS 攻擊的便捷工具。Anycast 允許多臺服務器共享一個 IP 地址,因此即使一臺 DNS 服務器關閉,仍然會有其他服務器啟動并提供服務。另一種保護 DNS 服務器的流行策略是 DNS 防火墻。
什么是 DNS 防火墻?
DNS 防火墻是一種工具,可以為 DNS 服務器提供許多安全和性能服務。DNS 防火墻位于用戶的遞歸解析器和他們試圖訪問的網站或服務的權威名稱服務器之間。防火墻可以提供速率限制服務來關閉試圖壓倒服務器的攻擊者。如果服務器確實因攻擊或任何其他原因而停機,DNS 防火墻可以通過提供來自緩存的 DNS 響應來保持運營商的站點或服務正常運行。
除了其安全功能外,DNS 防火墻還可以提供性能解決方案,例如更快的 DNS 查找和降低 DNS 運營商的帶寬成本。
DNS 作為安全工具
DNS 解析器也可以配置為為其最終用戶(瀏覽 Internet 的人)提供安全解決方案。一些 DNS 解析器提供內容過濾等功能,可以阻止已知分發惡意軟件和垃圾郵件的網站,以及阻止與已知僵尸網絡通信的僵尸網絡保護。許多這些安全的 DNS 解析器都是免費使用的,用戶可以通過更改其本地路由器中的單個設置來切換到這些遞歸 DNS服務之一。
DNS 查詢是私有的嗎?
另一個重要的 DNS 安全問題是用戶隱私。DNS 查詢未加密。即使用戶使用像1.1.1.1這樣不跟蹤他們活動的 DNS 解析器,DNS 查詢也會以明文形式在 Internet 上傳輸。這意味著攔截查詢的任何人都可以看到用戶正在訪問哪些網站。
缺乏隱私會影響安全,在某些情況下還會影響人權;如果 DNS 查詢不是私人的,那么政府審查互聯網和攻擊者跟蹤用戶的在線行為變得更容易。DNS over TLS 和 DNS over HTTPS是加密 DNS 查詢的兩個標準,以防止外部各方能夠讀取它們。還與其他組織合作以幫助提高 DNS 安全性——例如,幫助 Mozilla 在其 Firefox 瀏覽器中啟用 DNS over HTTPS 以保護用戶。